동적 프로그래밍 백준 1149번: RGB거리 한 시점에서의 선택이 뒤따르는 시점들의 선택에 영향을 미치므로, 각 시점이 처할 수 있는 상태를 고려해 부분 문제를 정의 부분 문제의 개수는 '시퀀스의 길이 N' × '각 시점이 놓일 수 있는 상태(state)의 개수 S' 상태(state)는 시퀀스 상의 한 시점 i(아이템)이 처할 수 있는 상황, 즉 DAG 상의 노드 선택지(choice)는 시점 i에서 시점 i+1로 넘어갈 때 취할 수 있... 동적 프로그래밍동적 프로그래밍 백준 1697번: 숨바꼭질 전체 부분 집합들을 탐색하는 데 너비 우선 탐색 적용하기 (최단 경로 찾기) 전체 부분 집합 탐색 과제를 너비 우선 탐색 방식으로 구성하는 과정 N에서 출발해 K에 도착하기 위한 최소거리를 f(N)라고 할 때, 최소거리 계산을 K를 기준으로 역으로 계산한 값을 g(K)라고 할 때, 이 부분은 아래 '역으로 접근해 탐색 범위 줄이기' 참고 역으로 접근해 탐색 범위 줄이기 N에서 K로 가기 위한... BFS동적 프로그래밍BFS 1932 : The Triangle 메모이제이션을 이용해 최댓값을 구하는 문제. 시행착오 횟수 한 번에 성공. 예제 코드를 보면 알 수 있듯, 행의 크기는 곧 열이다. 예를 들어 제 3열이라면 행의 크기는 3이다(1,2,3행). 맨 왼쪽과 오른쪽을 제외한 중간에 있는 수들은 자신의 위에 있는 좌측, 우측 수 중 최댓값을 이용해야 한다. 맨 왼쪽 인덱스는 0, 맨 오른쪽 인덱스는 열과 같음을 이용했다. 문제에서는 최댓값을 요구하... 동적 프로그래밍생각메모이제이션동적 프로그래밍
백준 1149번: RGB거리 한 시점에서의 선택이 뒤따르는 시점들의 선택에 영향을 미치므로, 각 시점이 처할 수 있는 상태를 고려해 부분 문제를 정의 부분 문제의 개수는 '시퀀스의 길이 N' × '각 시점이 놓일 수 있는 상태(state)의 개수 S' 상태(state)는 시퀀스 상의 한 시점 i(아이템)이 처할 수 있는 상황, 즉 DAG 상의 노드 선택지(choice)는 시점 i에서 시점 i+1로 넘어갈 때 취할 수 있... 동적 프로그래밍동적 프로그래밍 백준 1697번: 숨바꼭질 전체 부분 집합들을 탐색하는 데 너비 우선 탐색 적용하기 (최단 경로 찾기) 전체 부분 집합 탐색 과제를 너비 우선 탐색 방식으로 구성하는 과정 N에서 출발해 K에 도착하기 위한 최소거리를 f(N)라고 할 때, 최소거리 계산을 K를 기준으로 역으로 계산한 값을 g(K)라고 할 때, 이 부분은 아래 '역으로 접근해 탐색 범위 줄이기' 참고 역으로 접근해 탐색 범위 줄이기 N에서 K로 가기 위한... BFS동적 프로그래밍BFS 1932 : The Triangle 메모이제이션을 이용해 최댓값을 구하는 문제. 시행착오 횟수 한 번에 성공. 예제 코드를 보면 알 수 있듯, 행의 크기는 곧 열이다. 예를 들어 제 3열이라면 행의 크기는 3이다(1,2,3행). 맨 왼쪽과 오른쪽을 제외한 중간에 있는 수들은 자신의 위에 있는 좌측, 우측 수 중 최댓값을 이용해야 한다. 맨 왼쪽 인덱스는 0, 맨 오른쪽 인덱스는 열과 같음을 이용했다. 문제에서는 최댓값을 요구하... 동적 프로그래밍생각메모이제이션동적 프로그래밍